home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 1 (Walnut Creek)
/
Aminet - June 1993 [Walnut Creek].iso
/
usenet
/
sources
/
volume90
/
util
/
st
/
part01
/
readme
< prev
next >
Wrap
Text File
|
1990-06-04
|
2KB
|
44 lines
Interrupt-driven Serial I/O Testbed
by John Schultz
4/16/90
This code directly accesses the hardware and achieves very high
baud rates without errors. This code should be legal if the serial
device is first opened and exclusive access is granted. Speeds of
over 130k baud between a stock, nofastmem 500 and a 25mhz GVP 68030
have been achieved. The '030 Amiga can go much faster; it can read
at least 223,720 baud. The 500 poops out at 132,575 baud. Writing
fast is no problem, reading eats up some bandwidth, and is thus
the bottleneck. Polled I/O (yuk) can yield faster rates. These
baud rates were accomplished with a direct 2,3,7 wire, 50 foot
shielded cable. Max baud rates may vary depending on cable and
hardware configurations.
The current test code, ST (Serial Test), writes characters typed
on the keyboard 10 times. Errors at high speed show up when less
than 10 characters are received or funny characters are inserted.
I can run DNet and leave it running while I run this code! DNet
must be idling, and the baud rate must be the same as DNet's (usually
19200) the last time you run ST. This is very useful as quiting and
restarting DNet is not necessary.
Part of the original assembly code came from the Amiga Transactor,
September 1989: Volume 2, Issue 6,pp 42-44, by Mike Schwartz. The
example changed the AutoVectors directly, and had a few typos. I use
SetIntVector(), and do things a little differently with the rbf and
tbe code. This was pretty much the first assembly language program I
wrote, so experts feel free to point out improvements.
I wrote the code using Lattice 5.04. I currently use the Cape
or Devpac assemblers for speed, but for this example used Lattice's
asm (everyone with Lattice should have it).
As always, please point out any optimizations, errors, or illegal
acts committed in this code. If you enhance the code, please email me
a copy.
Use this code as you wish; no strings, ropes, cables, or
bungee cords attached.
John